When another part of Semantic (or another Emacs package
using Semantic) queries the SemanticDB library for a
source code tag, the search need not be limited to tags defined
within the current file. It can include tags defined elsewhere,
such as header files referenced by the current file
(e.g., via the C/C++ #include directive). While
performing the search, the SemanticDB library may even
automatically visit other files and parse them, if necessary.
The variable semanticdb-find-default-throttle
determines how aggressively SemanticDB searches for source code
tags. See Search
Throttle.
The details of SemanticDB searches can vary from language to
language. In C/C++ code, for example, SemanticDB distinguishes
between project header files and system header
files, based on whether the #include directive
uses the "" or <> filename
delimiter. SemanticDB looks for system header in the system
include path (see Include paths).